/**
 * @program: yygh_parent
 * @ClassName ScheduleService
 * @description:
 * @author: zyw
 * @create: 2023-05-25 12:59
 * @Version 1.0
 **/
package com.atguigu.yygh.hosp.service;

import com.atguigu.yygh.model.hosp.Schedule;
import com.atguigu.yygh.vo.hosp.ScheduleOrderVo;
import org.springframework.data.domain.Page;

import java.util.List;
import java.util.Map;

public interface ScheduleService {
    void saveSchedule(Map<String, Object> map);

    Page<Schedule> getSchedulePage(Map<String, Object> paramMap);

    void remove(Map<String, Object> map);

    Map<String, Object> page(long page, long limit, String hoscode, String depcode);

    List<Schedule> getScheduleDetail(String hoscode, String depcode, String workDate);

    Map<String, Object> getBookingScheduleRule(String hoscode, String depcode, Integer pageNum, Integer pageSize);

    Schedule getSchedule(String scheduleId);


    ScheduleOrderVo getScheduleById(String scheduleId);

    boolean updateAvailableNumber(String scheduleId, Integer availableNumber);

    void cancelSchedule(String scheduleId);
}
 
